package com.leesche.zcsp.node.web.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class PubDeviceCriteria {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public PubDeviceCriteria() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andDeviceidIsNull() {
            addCriterion("DeviceID is null");
            return (Criteria) this;
        }

        public Criteria andDeviceidIsNotNull() {
            addCriterion("DeviceID is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceidEqualTo(Long value) {
            addCriterion("DeviceID =", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotEqualTo(Long value) {
            addCriterion("DeviceID <>", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidGreaterThan(Long value) {
            addCriterion("DeviceID >", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidGreaterThanOrEqualTo(Long value) {
            addCriterion("DeviceID >=", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidLessThan(Long value) {
            addCriterion("DeviceID <", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidLessThanOrEqualTo(Long value) {
            addCriterion("DeviceID <=", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidIn(List<Long> values) {
            addCriterion("DeviceID in", values, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotIn(List<Long> values) {
            addCriterion("DeviceID not in", values, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidBetween(Long value1, Long value2) {
            addCriterion("DeviceID between", value1, value2, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotBetween(Long value1, Long value2) {
            addCriterion("DeviceID not between", value1, value2, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidIsNull() {
            addCriterion("DeviceTypeID is null");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidIsNotNull() {
            addCriterion("DeviceTypeID is not null");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidEqualTo(Long value) {
            addCriterion("DeviceTypeID =", value, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidNotEqualTo(Long value) {
            addCriterion("DeviceTypeID <>", value, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidGreaterThan(Long value) {
            addCriterion("DeviceTypeID >", value, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidGreaterThanOrEqualTo(Long value) {
            addCriterion("DeviceTypeID >=", value, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidLessThan(Long value) {
            addCriterion("DeviceTypeID <", value, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidLessThanOrEqualTo(Long value) {
            addCriterion("DeviceTypeID <=", value, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidIn(List<Long> values) {
            addCriterion("DeviceTypeID in", values, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidNotIn(List<Long> values) {
            addCriterion("DeviceTypeID not in", values, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidBetween(Long value1, Long value2) {
            addCriterion("DeviceTypeID between", value1, value2, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andDevicetypeidNotBetween(Long value1, Long value2) {
            addCriterion("DeviceTypeID not between", value1, value2, "devicetypeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidIsNull() {
            addCriterion("PlaceID is null");
            return (Criteria) this;
        }

        public Criteria andPlaceidIsNotNull() {
            addCriterion("PlaceID is not null");
            return (Criteria) this;
        }

        public Criteria andPlaceidEqualTo(Long value) {
            addCriterion("PlaceID =", value, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidNotEqualTo(Long value) {
            addCriterion("PlaceID <>", value, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidGreaterThan(Long value) {
            addCriterion("PlaceID >", value, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidGreaterThanOrEqualTo(Long value) {
            addCriterion("PlaceID >=", value, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidLessThan(Long value) {
            addCriterion("PlaceID <", value, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidLessThanOrEqualTo(Long value) {
            addCriterion("PlaceID <=", value, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidIn(List<Long> values) {
            addCriterion("PlaceID in", values, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidNotIn(List<Long> values) {
            addCriterion("PlaceID not in", values, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidBetween(Long value1, Long value2) {
            addCriterion("PlaceID between", value1, value2, "placeid");
            return (Criteria) this;
        }

        public Criteria andPlaceidNotBetween(Long value1, Long value2) {
            addCriterion("PlaceID not between", value1, value2, "placeid");
            return (Criteria) this;
        }

        public Criteria andVersionidIsNull() {
            addCriterion("VersionID is null");
            return (Criteria) this;
        }

        public Criteria andVersionidIsNotNull() {
            addCriterion("VersionID is not null");
            return (Criteria) this;
        }

        public Criteria andVersionidEqualTo(Long value) {
            addCriterion("VersionID =", value, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidNotEqualTo(Long value) {
            addCriterion("VersionID <>", value, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidGreaterThan(Long value) {
            addCriterion("VersionID >", value, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidGreaterThanOrEqualTo(Long value) {
            addCriterion("VersionID >=", value, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidLessThan(Long value) {
            addCriterion("VersionID <", value, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidLessThanOrEqualTo(Long value) {
            addCriterion("VersionID <=", value, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidIn(List<Long> values) {
            addCriterion("VersionID in", values, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidNotIn(List<Long> values) {
            addCriterion("VersionID not in", values, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidBetween(Long value1, Long value2) {
            addCriterion("VersionID between", value1, value2, "versionid");
            return (Criteria) this;
        }

        public Criteria andVersionidNotBetween(Long value1, Long value2) {
            addCriterion("VersionID not between", value1, value2, "versionid");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeIsNull() {
            addCriterion("DeviceShortCode is null");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeIsNotNull() {
            addCriterion("DeviceShortCode is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeEqualTo(String value) {
            addCriterion("DeviceShortCode =", value, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeNotEqualTo(String value) {
            addCriterion("DeviceShortCode <>", value, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeGreaterThan(String value) {
            addCriterion("DeviceShortCode >", value, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeGreaterThanOrEqualTo(String value) {
            addCriterion("DeviceShortCode >=", value, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeLessThan(String value) {
            addCriterion("DeviceShortCode <", value, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeLessThanOrEqualTo(String value) {
            addCriterion("DeviceShortCode <=", value, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeLike(String value) {
            addCriterion("DeviceShortCode like", value, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeNotLike(String value) {
            addCriterion("DeviceShortCode not like", value, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeIn(List<String> values) {
            addCriterion("DeviceShortCode in", values, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeNotIn(List<String> values) {
            addCriterion("DeviceShortCode not in", values, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeBetween(String value1, String value2) {
            addCriterion("DeviceShortCode between", value1, value2, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviceshortcodeNotBetween(String value1, String value2) {
            addCriterion("DeviceShortCode not between", value1, value2, "deviceshortcode");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlIsNull() {
            addCriterion("deviveImageUrl is null");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlIsNotNull() {
            addCriterion("deviveImageUrl is not null");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlEqualTo(String value) {
            addCriterion("deviveImageUrl =", value, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlNotEqualTo(String value) {
            addCriterion("deviveImageUrl <>", value, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlGreaterThan(String value) {
            addCriterion("deviveImageUrl >", value, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlGreaterThanOrEqualTo(String value) {
            addCriterion("deviveImageUrl >=", value, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlLessThan(String value) {
            addCriterion("deviveImageUrl <", value, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlLessThanOrEqualTo(String value) {
            addCriterion("deviveImageUrl <=", value, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlLike(String value) {
            addCriterion("deviveImageUrl like", value, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlNotLike(String value) {
            addCriterion("deviveImageUrl not like", value, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlIn(List<String> values) {
            addCriterion("deviveImageUrl in", values, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlNotIn(List<String> values) {
            addCriterion("deviveImageUrl not in", values, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlBetween(String value1, String value2) {
            addCriterion("deviveImageUrl between", value1, value2, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andDeviveimageurlNotBetween(String value1, String value2) {
            addCriterion("deviveImageUrl not between", value1, value2, "deviveimageurl");
            return (Criteria) this;
        }

        public Criteria andImmeIsNull() {
            addCriterion("imme is null");
            return (Criteria) this;
        }

        public Criteria andImmeIsNotNull() {
            addCriterion("imme is not null");
            return (Criteria) this;
        }

        public Criteria andImmeEqualTo(String value) {
            addCriterion("imme =", value, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeNotEqualTo(String value) {
            addCriterion("imme <>", value, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeGreaterThan(String value) {
            addCriterion("imme >", value, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeGreaterThanOrEqualTo(String value) {
            addCriterion("imme >=", value, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeLessThan(String value) {
            addCriterion("imme <", value, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeLessThanOrEqualTo(String value) {
            addCriterion("imme <=", value, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeLike(String value) {
            addCriterion("imme like", value, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeNotLike(String value) {
            addCriterion("imme not like", value, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeIn(List<String> values) {
            addCriterion("imme in", values, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeNotIn(List<String> values) {
            addCriterion("imme not in", values, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeBetween(String value1, String value2) {
            addCriterion("imme between", value1, value2, "imme");
            return (Criteria) this;
        }

        public Criteria andImmeNotBetween(String value1, String value2) {
            addCriterion("imme not between", value1, value2, "imme");
            return (Criteria) this;
        }

        public Criteria andDevicenameIsNull() {
            addCriterion("DeviceName is null");
            return (Criteria) this;
        }

        public Criteria andDevicenameIsNotNull() {
            addCriterion("DeviceName is not null");
            return (Criteria) this;
        }

        public Criteria andDevicenameEqualTo(String value) {
            addCriterion("DeviceName =", value, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameNotEqualTo(String value) {
            addCriterion("DeviceName <>", value, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameGreaterThan(String value) {
            addCriterion("DeviceName >", value, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameGreaterThanOrEqualTo(String value) {
            addCriterion("DeviceName >=", value, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameLessThan(String value) {
            addCriterion("DeviceName <", value, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameLessThanOrEqualTo(String value) {
            addCriterion("DeviceName <=", value, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameLike(String value) {
            addCriterion("DeviceName like", value, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameNotLike(String value) {
            addCriterion("DeviceName not like", value, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameIn(List<String> values) {
            addCriterion("DeviceName in", values, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameNotIn(List<String> values) {
            addCriterion("DeviceName not in", values, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameBetween(String value1, String value2) {
            addCriterion("DeviceName between", value1, value2, "devicename");
            return (Criteria) this;
        }

        public Criteria andDevicenameNotBetween(String value1, String value2) {
            addCriterion("DeviceName not between", value1, value2, "devicename");
            return (Criteria) this;
        }

        public Criteria andDidIsNull() {
            addCriterion("DID is null");
            return (Criteria) this;
        }

        public Criteria andDidIsNotNull() {
            addCriterion("DID is not null");
            return (Criteria) this;
        }

        public Criteria andDidEqualTo(String value) {
            addCriterion("DID =", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidNotEqualTo(String value) {
            addCriterion("DID <>", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidGreaterThan(String value) {
            addCriterion("DID >", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidGreaterThanOrEqualTo(String value) {
            addCriterion("DID >=", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidLessThan(String value) {
            addCriterion("DID <", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidLessThanOrEqualTo(String value) {
            addCriterion("DID <=", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidLike(String value) {
            addCriterion("DID like", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidNotLike(String value) {
            addCriterion("DID not like", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidIn(List<String> values) {
            addCriterion("DID in", values, "did");
            return (Criteria) this;
        }

        public Criteria andDidNotIn(List<String> values) {
            addCriterion("DID not in", values, "did");
            return (Criteria) this;
        }

        public Criteria andDidBetween(String value1, String value2) {
            addCriterion("DID between", value1, value2, "did");
            return (Criteria) this;
        }

        public Criteria andDidNotBetween(String value1, String value2) {
            addCriterion("DID not between", value1, value2, "did");
            return (Criteria) this;
        }

        public Criteria andMacIsNull() {
            addCriterion("MAC is null");
            return (Criteria) this;
        }

        public Criteria andMacIsNotNull() {
            addCriterion("MAC is not null");
            return (Criteria) this;
        }

        public Criteria andMacEqualTo(String value) {
            addCriterion("MAC =", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacNotEqualTo(String value) {
            addCriterion("MAC <>", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacGreaterThan(String value) {
            addCriterion("MAC >", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacGreaterThanOrEqualTo(String value) {
            addCriterion("MAC >=", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacLessThan(String value) {
            addCriterion("MAC <", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacLessThanOrEqualTo(String value) {
            addCriterion("MAC <=", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacLike(String value) {
            addCriterion("MAC like", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacNotLike(String value) {
            addCriterion("MAC not like", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacIn(List<String> values) {
            addCriterion("MAC in", values, "mac");
            return (Criteria) this;
        }

        public Criteria andMacNotIn(List<String> values) {
            addCriterion("MAC not in", values, "mac");
            return (Criteria) this;
        }

        public Criteria andMacBetween(String value1, String value2) {
            addCriterion("MAC between", value1, value2, "mac");
            return (Criteria) this;
        }

        public Criteria andMacNotBetween(String value1, String value2) {
            addCriterion("MAC not between", value1, value2, "mac");
            return (Criteria) this;
        }

        public Criteria andStateIsNull() {
            addCriterion("State is null");
            return (Criteria) this;
        }

        public Criteria andStateIsNotNull() {
            addCriterion("State is not null");
            return (Criteria) this;
        }

        public Criteria andStateEqualTo(Integer value) {
            addCriterion("State =", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotEqualTo(Integer value) {
            addCriterion("State <>", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThan(Integer value) {
            addCriterion("State >", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("State >=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThan(Integer value) {
            addCriterion("State <", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThanOrEqualTo(Integer value) {
            addCriterion("State <=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateIn(List<Integer> values) {
            addCriterion("State in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotIn(List<Integer> values) {
            addCriterion("State not in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateBetween(Integer value1, Integer value2) {
            addCriterion("State between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotBetween(Integer value1, Integer value2) {
            addCriterion("State not between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andIsonlineIsNull() {
            addCriterion("IsOnLine is null");
            return (Criteria) this;
        }

        public Criteria andIsonlineIsNotNull() {
            addCriterion("IsOnLine is not null");
            return (Criteria) this;
        }

        public Criteria andIsonlineEqualTo(Integer value) {
            addCriterion("IsOnLine =", value, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineNotEqualTo(Integer value) {
            addCriterion("IsOnLine <>", value, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineGreaterThan(Integer value) {
            addCriterion("IsOnLine >", value, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineGreaterThanOrEqualTo(Integer value) {
            addCriterion("IsOnLine >=", value, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineLessThan(Integer value) {
            addCriterion("IsOnLine <", value, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineLessThanOrEqualTo(Integer value) {
            addCriterion("IsOnLine <=", value, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineIn(List<Integer> values) {
            addCriterion("IsOnLine in", values, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineNotIn(List<Integer> values) {
            addCriterion("IsOnLine not in", values, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineBetween(Integer value1, Integer value2) {
            addCriterion("IsOnLine between", value1, value2, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsonlineNotBetween(Integer value1, Integer value2) {
            addCriterion("IsOnLine not between", value1, value2, "isonline");
            return (Criteria) this;
        }

        public Criteria andIsfaultIsNull() {
            addCriterion("IsFault is null");
            return (Criteria) this;
        }

        public Criteria andIsfaultIsNotNull() {
            addCriterion("IsFault is not null");
            return (Criteria) this;
        }

        public Criteria andIsfaultEqualTo(Integer value) {
            addCriterion("IsFault =", value, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultNotEqualTo(Integer value) {
            addCriterion("IsFault <>", value, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultGreaterThan(Integer value) {
            addCriterion("IsFault >", value, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultGreaterThanOrEqualTo(Integer value) {
            addCriterion("IsFault >=", value, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultLessThan(Integer value) {
            addCriterion("IsFault <", value, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultLessThanOrEqualTo(Integer value) {
            addCriterion("IsFault <=", value, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultIn(List<Integer> values) {
            addCriterion("IsFault in", values, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultNotIn(List<Integer> values) {
            addCriterion("IsFault not in", values, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultBetween(Integer value1, Integer value2) {
            addCriterion("IsFault between", value1, value2, "isfault");
            return (Criteria) this;
        }

        public Criteria andIsfaultNotBetween(Integer value1, Integer value2) {
            addCriterion("IsFault not between", value1, value2, "isfault");
            return (Criteria) this;
        }

        public Criteria andFaultreasonIsNull() {
            addCriterion("FaultReason is null");
            return (Criteria) this;
        }

        public Criteria andFaultreasonIsNotNull() {
            addCriterion("FaultReason is not null");
            return (Criteria) this;
        }

        public Criteria andFaultreasonEqualTo(String value) {
            addCriterion("FaultReason =", value, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonNotEqualTo(String value) {
            addCriterion("FaultReason <>", value, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonGreaterThan(String value) {
            addCriterion("FaultReason >", value, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonGreaterThanOrEqualTo(String value) {
            addCriterion("FaultReason >=", value, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonLessThan(String value) {
            addCriterion("FaultReason <", value, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonLessThanOrEqualTo(String value) {
            addCriterion("FaultReason <=", value, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonLike(String value) {
            addCriterion("FaultReason like", value, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonNotLike(String value) {
            addCriterion("FaultReason not like", value, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonIn(List<String> values) {
            addCriterion("FaultReason in", values, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonNotIn(List<String> values) {
            addCriterion("FaultReason not in", values, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonBetween(String value1, String value2) {
            addCriterion("FaultReason between", value1, value2, "faultreason");
            return (Criteria) this;
        }

        public Criteria andFaultreasonNotBetween(String value1, String value2) {
            addCriterion("FaultReason not between", value1, value2, "faultreason");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeIsNull() {
            addCriterion("IsDisCode is null");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeIsNotNull() {
            addCriterion("IsDisCode is not null");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeEqualTo(Integer value) {
            addCriterion("IsDisCode =", value, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeNotEqualTo(Integer value) {
            addCriterion("IsDisCode <>", value, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeGreaterThan(Integer value) {
            addCriterion("IsDisCode >", value, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeGreaterThanOrEqualTo(Integer value) {
            addCriterion("IsDisCode >=", value, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeLessThan(Integer value) {
            addCriterion("IsDisCode <", value, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeLessThanOrEqualTo(Integer value) {
            addCriterion("IsDisCode <=", value, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeIn(List<Integer> values) {
            addCriterion("IsDisCode in", values, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeNotIn(List<Integer> values) {
            addCriterion("IsDisCode not in", values, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeBetween(Integer value1, Integer value2) {
            addCriterion("IsDisCode between", value1, value2, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andIsdiscodeNotBetween(Integer value1, Integer value2) {
            addCriterion("IsDisCode not between", value1, value2, "isdiscode");
            return (Criteria) this;
        }

        public Criteria andDpIsNull() {
            addCriterion("dp is null");
            return (Criteria) this;
        }

        public Criteria andDpIsNotNull() {
            addCriterion("dp is not null");
            return (Criteria) this;
        }

        public Criteria andDpEqualTo(Integer value) {
            addCriterion("dp =", value, "dp");
            return (Criteria) this;
        }

        public Criteria andDpNotEqualTo(Integer value) {
            addCriterion("dp <>", value, "dp");
            return (Criteria) this;
        }

        public Criteria andDpGreaterThan(Integer value) {
            addCriterion("dp >", value, "dp");
            return (Criteria) this;
        }

        public Criteria andDpGreaterThanOrEqualTo(Integer value) {
            addCriterion("dp >=", value, "dp");
            return (Criteria) this;
        }

        public Criteria andDpLessThan(Integer value) {
            addCriterion("dp <", value, "dp");
            return (Criteria) this;
        }

        public Criteria andDpLessThanOrEqualTo(Integer value) {
            addCriterion("dp <=", value, "dp");
            return (Criteria) this;
        }

        public Criteria andDpIn(List<Integer> values) {
            addCriterion("dp in", values, "dp");
            return (Criteria) this;
        }

        public Criteria andDpNotIn(List<Integer> values) {
            addCriterion("dp not in", values, "dp");
            return (Criteria) this;
        }

        public Criteria andDpBetween(Integer value1, Integer value2) {
            addCriterion("dp between", value1, value2, "dp");
            return (Criteria) this;
        }

        public Criteria andDpNotBetween(Integer value1, Integer value2) {
            addCriterion("dp not between", value1, value2, "dp");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeIsNull() {
            addCriterion("LastOnLineTime is null");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeIsNotNull() {
            addCriterion("LastOnLineTime is not null");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeEqualTo(Date value) {
            addCriterion("LastOnLineTime =", value, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeNotEqualTo(Date value) {
            addCriterion("LastOnLineTime <>", value, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeGreaterThan(Date value) {
            addCriterion("LastOnLineTime >", value, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("LastOnLineTime >=", value, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeLessThan(Date value) {
            addCriterion("LastOnLineTime <", value, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeLessThanOrEqualTo(Date value) {
            addCriterion("LastOnLineTime <=", value, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeIn(List<Date> values) {
            addCriterion("LastOnLineTime in", values, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeNotIn(List<Date> values) {
            addCriterion("LastOnLineTime not in", values, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeBetween(Date value1, Date value2) {
            addCriterion("LastOnLineTime between", value1, value2, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andLastonlinetimeNotBetween(Date value1, Date value2) {
            addCriterion("LastOnLineTime not between", value1, value2, "lastonlinetime");
            return (Criteria) this;
        }

        public Criteria andBindtimeIsNull() {
            addCriterion("BindTime is null");
            return (Criteria) this;
        }

        public Criteria andBindtimeIsNotNull() {
            addCriterion("BindTime is not null");
            return (Criteria) this;
        }

        public Criteria andBindtimeEqualTo(Date value) {
            addCriterion("BindTime =", value, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeNotEqualTo(Date value) {
            addCriterion("BindTime <>", value, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeGreaterThan(Date value) {
            addCriterion("BindTime >", value, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("BindTime >=", value, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeLessThan(Date value) {
            addCriterion("BindTime <", value, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeLessThanOrEqualTo(Date value) {
            addCriterion("BindTime <=", value, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeIn(List<Date> values) {
            addCriterion("BindTime in", values, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeNotIn(List<Date> values) {
            addCriterion("BindTime not in", values, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeBetween(Date value1, Date value2) {
            addCriterion("BindTime between", value1, value2, "bindtime");
            return (Criteria) this;
        }

        public Criteria andBindtimeNotBetween(Date value1, Date value2) {
            addCriterion("BindTime not between", value1, value2, "bindtime");
            return (Criteria) this;
        }

        public Criteria andWarntimeIsNull() {
            addCriterion("WarnTime is null");
            return (Criteria) this;
        }

        public Criteria andWarntimeIsNotNull() {
            addCriterion("WarnTime is not null");
            return (Criteria) this;
        }

        public Criteria andWarntimeEqualTo(Date value) {
            addCriterion("WarnTime =", value, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeNotEqualTo(Date value) {
            addCriterion("WarnTime <>", value, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeGreaterThan(Date value) {
            addCriterion("WarnTime >", value, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeGreaterThanOrEqualTo(Date value) {
            addCriterion("WarnTime >=", value, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeLessThan(Date value) {
            addCriterion("WarnTime <", value, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeLessThanOrEqualTo(Date value) {
            addCriterion("WarnTime <=", value, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeIn(List<Date> values) {
            addCriterion("WarnTime in", values, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeNotIn(List<Date> values) {
            addCriterion("WarnTime not in", values, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeBetween(Date value1, Date value2) {
            addCriterion("WarnTime between", value1, value2, "warntime");
            return (Criteria) this;
        }

        public Criteria andWarntimeNotBetween(Date value1, Date value2) {
            addCriterion("WarnTime not between", value1, value2, "warntime");
            return (Criteria) this;
        }

        public Criteria andAddgiftIsNull() {
            addCriterion("AddGift is null");
            return (Criteria) this;
        }

        public Criteria andAddgiftIsNotNull() {
            addCriterion("AddGift is not null");
            return (Criteria) this;
        }

        public Criteria andAddgiftEqualTo(Integer value) {
            addCriterion("AddGift =", value, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftNotEqualTo(Integer value) {
            addCriterion("AddGift <>", value, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftGreaterThan(Integer value) {
            addCriterion("AddGift >", value, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftGreaterThanOrEqualTo(Integer value) {
            addCriterion("AddGift >=", value, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftLessThan(Integer value) {
            addCriterion("AddGift <", value, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftLessThanOrEqualTo(Integer value) {
            addCriterion("AddGift <=", value, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftIn(List<Integer> values) {
            addCriterion("AddGift in", values, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftNotIn(List<Integer> values) {
            addCriterion("AddGift not in", values, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftBetween(Integer value1, Integer value2) {
            addCriterion("AddGift between", value1, value2, "addgift");
            return (Criteria) this;
        }

        public Criteria andAddgiftNotBetween(Integer value1, Integer value2) {
            addCriterion("AddGift not between", value1, value2, "addgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftIsNull() {
            addCriterion("OutGift is null");
            return (Criteria) this;
        }

        public Criteria andOutgiftIsNotNull() {
            addCriterion("OutGift is not null");
            return (Criteria) this;
        }

        public Criteria andOutgiftEqualTo(Integer value) {
            addCriterion("OutGift =", value, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftNotEqualTo(Integer value) {
            addCriterion("OutGift <>", value, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftGreaterThan(Integer value) {
            addCriterion("OutGift >", value, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftGreaterThanOrEqualTo(Integer value) {
            addCriterion("OutGift >=", value, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftLessThan(Integer value) {
            addCriterion("OutGift <", value, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftLessThanOrEqualTo(Integer value) {
            addCriterion("OutGift <=", value, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftIn(List<Integer> values) {
            addCriterion("OutGift in", values, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftNotIn(List<Integer> values) {
            addCriterion("OutGift not in", values, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftBetween(Integer value1, Integer value2) {
            addCriterion("OutGift between", value1, value2, "outgift");
            return (Criteria) this;
        }

        public Criteria andOutgiftNotBetween(Integer value1, Integer value2) {
            addCriterion("OutGift not between", value1, value2, "outgift");
            return (Criteria) this;
        }

        public Criteria andMoneyIsNull() {
            addCriterion("money is null");
            return (Criteria) this;
        }

        public Criteria andMoneyIsNotNull() {
            addCriterion("money is not null");
            return (Criteria) this;
        }

        public Criteria andMoneyEqualTo(Integer value) {
            addCriterion("money =", value, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyNotEqualTo(Integer value) {
            addCriterion("money <>", value, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyGreaterThan(Integer value) {
            addCriterion("money >", value, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyGreaterThanOrEqualTo(Integer value) {
            addCriterion("money >=", value, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyLessThan(Integer value) {
            addCriterion("money <", value, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyLessThanOrEqualTo(Integer value) {
            addCriterion("money <=", value, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyIn(List<Integer> values) {
            addCriterion("money in", values, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyNotIn(List<Integer> values) {
            addCriterion("money not in", values, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyBetween(Integer value1, Integer value2) {
            addCriterion("money between", value1, value2, "money");
            return (Criteria) this;
        }

        public Criteria andMoneyNotBetween(Integer value1, Integer value2) {
            addCriterion("money not between", value1, value2, "money");
            return (Criteria) this;
        }

        public Criteria andNetmoneyIsNull() {
            addCriterion("NetMoney is null");
            return (Criteria) this;
        }

        public Criteria andNetmoneyIsNotNull() {
            addCriterion("NetMoney is not null");
            return (Criteria) this;
        }

        public Criteria andNetmoneyEqualTo(Long value) {
            addCriterion("NetMoney =", value, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyNotEqualTo(Long value) {
            addCriterion("NetMoney <>", value, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyGreaterThan(Long value) {
            addCriterion("NetMoney >", value, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyGreaterThanOrEqualTo(Long value) {
            addCriterion("NetMoney >=", value, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyLessThan(Long value) {
            addCriterion("NetMoney <", value, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyLessThanOrEqualTo(Long value) {
            addCriterion("NetMoney <=", value, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyIn(List<Long> values) {
            addCriterion("NetMoney in", values, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyNotIn(List<Long> values) {
            addCriterion("NetMoney not in", values, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyBetween(Long value1, Long value2) {
            addCriterion("NetMoney between", value1, value2, "netmoney");
            return (Criteria) this;
        }

        public Criteria andNetmoneyNotBetween(Long value1, Long value2) {
            addCriterion("NetMoney not between", value1, value2, "netmoney");
            return (Criteria) this;
        }

        public Criteria andCoinIsNull() {
            addCriterion("Coin is null");
            return (Criteria) this;
        }

        public Criteria andCoinIsNotNull() {
            addCriterion("Coin is not null");
            return (Criteria) this;
        }

        public Criteria andCoinEqualTo(Integer value) {
            addCriterion("Coin =", value, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinNotEqualTo(Integer value) {
            addCriterion("Coin <>", value, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinGreaterThan(Integer value) {
            addCriterion("Coin >", value, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinGreaterThanOrEqualTo(Integer value) {
            addCriterion("Coin >=", value, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinLessThan(Integer value) {
            addCriterion("Coin <", value, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinLessThanOrEqualTo(Integer value) {
            addCriterion("Coin <=", value, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinIn(List<Integer> values) {
            addCriterion("Coin in", values, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinNotIn(List<Integer> values) {
            addCriterion("Coin not in", values, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinBetween(Integer value1, Integer value2) {
            addCriterion("Coin between", value1, value2, "coin");
            return (Criteria) this;
        }

        public Criteria andCoinNotBetween(Integer value1, Integer value2) {
            addCriterion("Coin not between", value1, value2, "coin");
            return (Criteria) this;
        }

        public Criteria andBatterystatusIsNull() {
            addCriterion("BatteryStatus is null");
            return (Criteria) this;
        }

        public Criteria andBatterystatusIsNotNull() {
            addCriterion("BatteryStatus is not null");
            return (Criteria) this;
        }

        public Criteria andBatterystatusEqualTo(Integer value) {
            addCriterion("BatteryStatus =", value, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusNotEqualTo(Integer value) {
            addCriterion("BatteryStatus <>", value, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusGreaterThan(Integer value) {
            addCriterion("BatteryStatus >", value, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("BatteryStatus >=", value, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusLessThan(Integer value) {
            addCriterion("BatteryStatus <", value, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusLessThanOrEqualTo(Integer value) {
            addCriterion("BatteryStatus <=", value, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusIn(List<Integer> values) {
            addCriterion("BatteryStatus in", values, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusNotIn(List<Integer> values) {
            addCriterion("BatteryStatus not in", values, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusBetween(Integer value1, Integer value2) {
            addCriterion("BatteryStatus between", value1, value2, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andBatterystatusNotBetween(Integer value1, Integer value2) {
            addCriterion("BatteryStatus not between", value1, value2, "batterystatus");
            return (Criteria) this;
        }

        public Criteria andSkeyIsNull() {
            addCriterion("skey is null");
            return (Criteria) this;
        }

        public Criteria andSkeyIsNotNull() {
            addCriterion("skey is not null");
            return (Criteria) this;
        }

        public Criteria andSkeyEqualTo(String value) {
            addCriterion("skey =", value, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyNotEqualTo(String value) {
            addCriterion("skey <>", value, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyGreaterThan(String value) {
            addCriterion("skey >", value, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyGreaterThanOrEqualTo(String value) {
            addCriterion("skey >=", value, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyLessThan(String value) {
            addCriterion("skey <", value, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyLessThanOrEqualTo(String value) {
            addCriterion("skey <=", value, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyLike(String value) {
            addCriterion("skey like", value, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyNotLike(String value) {
            addCriterion("skey not like", value, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyIn(List<String> values) {
            addCriterion("skey in", values, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyNotIn(List<String> values) {
            addCriterion("skey not in", values, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyBetween(String value1, String value2) {
            addCriterion("skey between", value1, value2, "skey");
            return (Criteria) this;
        }

        public Criteria andSkeyNotBetween(String value1, String value2) {
            addCriterion("skey not between", value1, value2, "skey");
            return (Criteria) this;
        }

        public Criteria andIntdata1IsNull() {
            addCriterion("intData1 is null");
            return (Criteria) this;
        }

        public Criteria andIntdata1IsNotNull() {
            addCriterion("intData1 is not null");
            return (Criteria) this;
        }

        public Criteria andIntdata1EqualTo(Integer value) {
            addCriterion("intData1 =", value, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1NotEqualTo(Integer value) {
            addCriterion("intData1 <>", value, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1GreaterThan(Integer value) {
            addCriterion("intData1 >", value, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1GreaterThanOrEqualTo(Integer value) {
            addCriterion("intData1 >=", value, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1LessThan(Integer value) {
            addCriterion("intData1 <", value, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1LessThanOrEqualTo(Integer value) {
            addCriterion("intData1 <=", value, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1In(List<Integer> values) {
            addCriterion("intData1 in", values, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1NotIn(List<Integer> values) {
            addCriterion("intData1 not in", values, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1Between(Integer value1, Integer value2) {
            addCriterion("intData1 between", value1, value2, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata1NotBetween(Integer value1, Integer value2) {
            addCriterion("intData1 not between", value1, value2, "intdata1");
            return (Criteria) this;
        }

        public Criteria andIntdata2IsNull() {
            addCriterion("intData2 is null");
            return (Criteria) this;
        }

        public Criteria andIntdata2IsNotNull() {
            addCriterion("intData2 is not null");
            return (Criteria) this;
        }

        public Criteria andIntdata2EqualTo(Integer value) {
            addCriterion("intData2 =", value, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2NotEqualTo(Integer value) {
            addCriterion("intData2 <>", value, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2GreaterThan(Integer value) {
            addCriterion("intData2 >", value, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2GreaterThanOrEqualTo(Integer value) {
            addCriterion("intData2 >=", value, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2LessThan(Integer value) {
            addCriterion("intData2 <", value, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2LessThanOrEqualTo(Integer value) {
            addCriterion("intData2 <=", value, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2In(List<Integer> values) {
            addCriterion("intData2 in", values, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2NotIn(List<Integer> values) {
            addCriterion("intData2 not in", values, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2Between(Integer value1, Integer value2) {
            addCriterion("intData2 between", value1, value2, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata2NotBetween(Integer value1, Integer value2) {
            addCriterion("intData2 not between", value1, value2, "intdata2");
            return (Criteria) this;
        }

        public Criteria andIntdata3IsNull() {
            addCriterion("intData3 is null");
            return (Criteria) this;
        }

        public Criteria andIntdata3IsNotNull() {
            addCriterion("intData3 is not null");
            return (Criteria) this;
        }

        public Criteria andIntdata3EqualTo(Integer value) {
            addCriterion("intData3 =", value, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3NotEqualTo(Integer value) {
            addCriterion("intData3 <>", value, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3GreaterThan(Integer value) {
            addCriterion("intData3 >", value, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3GreaterThanOrEqualTo(Integer value) {
            addCriterion("intData3 >=", value, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3LessThan(Integer value) {
            addCriterion("intData3 <", value, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3LessThanOrEqualTo(Integer value) {
            addCriterion("intData3 <=", value, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3In(List<Integer> values) {
            addCriterion("intData3 in", values, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3NotIn(List<Integer> values) {
            addCriterion("intData3 not in", values, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3Between(Integer value1, Integer value2) {
            addCriterion("intData3 between", value1, value2, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata3NotBetween(Integer value1, Integer value2) {
            addCriterion("intData3 not between", value1, value2, "intdata3");
            return (Criteria) this;
        }

        public Criteria andIntdata4IsNull() {
            addCriterion("intData4 is null");
            return (Criteria) this;
        }

        public Criteria andIntdata4IsNotNull() {
            addCriterion("intData4 is not null");
            return (Criteria) this;
        }

        public Criteria andIntdata4EqualTo(Integer value) {
            addCriterion("intData4 =", value, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4NotEqualTo(Integer value) {
            addCriterion("intData4 <>", value, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4GreaterThan(Integer value) {
            addCriterion("intData4 >", value, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4GreaterThanOrEqualTo(Integer value) {
            addCriterion("intData4 >=", value, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4LessThan(Integer value) {
            addCriterion("intData4 <", value, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4LessThanOrEqualTo(Integer value) {
            addCriterion("intData4 <=", value, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4In(List<Integer> values) {
            addCriterion("intData4 in", values, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4NotIn(List<Integer> values) {
            addCriterion("intData4 not in", values, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4Between(Integer value1, Integer value2) {
            addCriterion("intData4 between", value1, value2, "intdata4");
            return (Criteria) this;
        }

        public Criteria andIntdata4NotBetween(Integer value1, Integer value2) {
            addCriterion("intData4 not between", value1, value2, "intdata4");
            return (Criteria) this;
        }

        public Criteria andSdata5IsNull() {
            addCriterion("sData5 is null");
            return (Criteria) this;
        }

        public Criteria andSdata5IsNotNull() {
            addCriterion("sData5 is not null");
            return (Criteria) this;
        }

        public Criteria andSdata5EqualTo(String value) {
            addCriterion("sData5 =", value, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5NotEqualTo(String value) {
            addCriterion("sData5 <>", value, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5GreaterThan(String value) {
            addCriterion("sData5 >", value, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5GreaterThanOrEqualTo(String value) {
            addCriterion("sData5 >=", value, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5LessThan(String value) {
            addCriterion("sData5 <", value, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5LessThanOrEqualTo(String value) {
            addCriterion("sData5 <=", value, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5Like(String value) {
            addCriterion("sData5 like", value, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5NotLike(String value) {
            addCriterion("sData5 not like", value, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5In(List<String> values) {
            addCriterion("sData5 in", values, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5NotIn(List<String> values) {
            addCriterion("sData5 not in", values, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5Between(String value1, String value2) {
            addCriterion("sData5 between", value1, value2, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata5NotBetween(String value1, String value2) {
            addCriterion("sData5 not between", value1, value2, "sdata5");
            return (Criteria) this;
        }

        public Criteria andSdata6IsNull() {
            addCriterion("sData6 is null");
            return (Criteria) this;
        }

        public Criteria andSdata6IsNotNull() {
            addCriterion("sData6 is not null");
            return (Criteria) this;
        }

        public Criteria andSdata6EqualTo(String value) {
            addCriterion("sData6 =", value, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6NotEqualTo(String value) {
            addCriterion("sData6 <>", value, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6GreaterThan(String value) {
            addCriterion("sData6 >", value, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6GreaterThanOrEqualTo(String value) {
            addCriterion("sData6 >=", value, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6LessThan(String value) {
            addCriterion("sData6 <", value, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6LessThanOrEqualTo(String value) {
            addCriterion("sData6 <=", value, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6Like(String value) {
            addCriterion("sData6 like", value, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6NotLike(String value) {
            addCriterion("sData6 not like", value, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6In(List<String> values) {
            addCriterion("sData6 in", values, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6NotIn(List<String> values) {
            addCriterion("sData6 not in", values, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6Between(String value1, String value2) {
            addCriterion("sData6 between", value1, value2, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata6NotBetween(String value1, String value2) {
            addCriterion("sData6 not between", value1, value2, "sdata6");
            return (Criteria) this;
        }

        public Criteria andSdata7IsNull() {
            addCriterion("sData7 is null");
            return (Criteria) this;
        }

        public Criteria andSdata7IsNotNull() {
            addCriterion("sData7 is not null");
            return (Criteria) this;
        }

        public Criteria andSdata7EqualTo(String value) {
            addCriterion("sData7 =", value, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7NotEqualTo(String value) {
            addCriterion("sData7 <>", value, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7GreaterThan(String value) {
            addCriterion("sData7 >", value, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7GreaterThanOrEqualTo(String value) {
            addCriterion("sData7 >=", value, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7LessThan(String value) {
            addCriterion("sData7 <", value, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7LessThanOrEqualTo(String value) {
            addCriterion("sData7 <=", value, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7Like(String value) {
            addCriterion("sData7 like", value, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7NotLike(String value) {
            addCriterion("sData7 not like", value, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7In(List<String> values) {
            addCriterion("sData7 in", values, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7NotIn(List<String> values) {
            addCriterion("sData7 not in", values, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7Between(String value1, String value2) {
            addCriterion("sData7 between", value1, value2, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata7NotBetween(String value1, String value2) {
            addCriterion("sData7 not between", value1, value2, "sdata7");
            return (Criteria) this;
        }

        public Criteria andSdata8IsNull() {
            addCriterion("sData8 is null");
            return (Criteria) this;
        }

        public Criteria andSdata8IsNotNull() {
            addCriterion("sData8 is not null");
            return (Criteria) this;
        }

        public Criteria andSdata8EqualTo(String value) {
            addCriterion("sData8 =", value, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8NotEqualTo(String value) {
            addCriterion("sData8 <>", value, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8GreaterThan(String value) {
            addCriterion("sData8 >", value, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8GreaterThanOrEqualTo(String value) {
            addCriterion("sData8 >=", value, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8LessThan(String value) {
            addCriterion("sData8 <", value, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8LessThanOrEqualTo(String value) {
            addCriterion("sData8 <=", value, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8Like(String value) {
            addCriterion("sData8 like", value, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8NotLike(String value) {
            addCriterion("sData8 not like", value, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8In(List<String> values) {
            addCriterion("sData8 in", values, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8NotIn(List<String> values) {
            addCriterion("sData8 not in", values, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8Between(String value1, String value2) {
            addCriterion("sData8 between", value1, value2, "sdata8");
            return (Criteria) this;
        }

        public Criteria andSdata8NotBetween(String value1, String value2) {
            addCriterion("sData8 not between", value1, value2, "sdata8");
            return (Criteria) this;
        }

        public Criteria andAgentidIsNull() {
            addCriterion("agentId is null");
            return (Criteria) this;
        }

        public Criteria andAgentidIsNotNull() {
            addCriterion("agentId is not null");
            return (Criteria) this;
        }

        public Criteria andAgentidEqualTo(Long value) {
            addCriterion("agentId =", value, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidNotEqualTo(Long value) {
            addCriterion("agentId <>", value, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidGreaterThan(Long value) {
            addCriterion("agentId >", value, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidGreaterThanOrEqualTo(Long value) {
            addCriterion("agentId >=", value, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidLessThan(Long value) {
            addCriterion("agentId <", value, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidLessThanOrEqualTo(Long value) {
            addCriterion("agentId <=", value, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidIn(List<Long> values) {
            addCriterion("agentId in", values, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidNotIn(List<Long> values) {
            addCriterion("agentId not in", values, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidBetween(Long value1, Long value2) {
            addCriterion("agentId between", value1, value2, "agentid");
            return (Criteria) this;
        }

        public Criteria andAgentidNotBetween(Long value1, Long value2) {
            addCriterion("agentId not between", value1, value2, "agentid");
            return (Criteria) this;
        }

        public Criteria andAdminidIsNull() {
            addCriterion("AdminID is null");
            return (Criteria) this;
        }

        public Criteria andAdminidIsNotNull() {
            addCriterion("AdminID is not null");
            return (Criteria) this;
        }

        public Criteria andAdminidEqualTo(Long value) {
            addCriterion("AdminID =", value, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidNotEqualTo(Long value) {
            addCriterion("AdminID <>", value, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidGreaterThan(Long value) {
            addCriterion("AdminID >", value, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidGreaterThanOrEqualTo(Long value) {
            addCriterion("AdminID >=", value, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidLessThan(Long value) {
            addCriterion("AdminID <", value, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidLessThanOrEqualTo(Long value) {
            addCriterion("AdminID <=", value, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidIn(List<Long> values) {
            addCriterion("AdminID in", values, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidNotIn(List<Long> values) {
            addCriterion("AdminID not in", values, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidBetween(Long value1, Long value2) {
            addCriterion("AdminID between", value1, value2, "adminid");
            return (Criteria) this;
        }

        public Criteria andAdminidNotBetween(Long value1, Long value2) {
            addCriterion("AdminID not between", value1, value2, "adminid");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("CreateTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("CreateTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("CreateTime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("CreateTime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("CreateTime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("CreateTime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("CreateTime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("CreateTime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("CreateTime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("CreateTime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("CreateTime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("CreateTime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIsNull() {
            addCriterion("UpdateTime is null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIsNotNull() {
            addCriterion("UpdateTime is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeEqualTo(Date value) {
            addCriterion("UpdateTime =", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotEqualTo(Date value) {
            addCriterion("UpdateTime <>", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeGreaterThan(Date value) {
            addCriterion("UpdateTime >", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("UpdateTime >=", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeLessThan(Date value) {
            addCriterion("UpdateTime <", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeLessThanOrEqualTo(Date value) {
            addCriterion("UpdateTime <=", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIn(List<Date> values) {
            addCriterion("UpdateTime in", values, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotIn(List<Date> values) {
            addCriterion("UpdateTime not in", values, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeBetween(Date value1, Date value2) {
            addCriterion("UpdateTime between", value1, value2, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotBetween(Date value1, Date value2) {
            addCriterion("UpdateTime not between", value1, value2, "updatetime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}